package com.newtouch.bxzs.database.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.newtouch.bxzs.database.model.*;

import java.util.List;


/**
 *组织机构Service层
 * <p>
 * <b>History:</b>
 * <table border="1">
 * <tr>
 * <th>Date</th>
 * <th>Operator</th>
 * <th>Memo</th>
 * </tr>
 * <tr>
 * <td>2020/12/21 15:35</td>
 * <td>Amour</td>
 * <td>Create</td>
 * </tr>
 * </table>
 *
 * @author lhx
 * @version 1.0.0
 * @since 1.0.0
 */
public interface OrganizationService {
//    /**
//     * 根据机构名称查询组织机构列表
//     *
//     * @param organizationVO
//     *
//     * @return
//     */
//    List<OrganizationBO> getOrganizationList(OrganizationVO organizationVO);
    /**
     * 实时获取机构数据
     *
     * @param organizationListVO
     *
     * @return
     */
    List<OrganizationBO> getOrganizationList(OrganizationListVO organizationListVO);
    /**
     * 根据机构名称查询组织机构列表
     *
     * @param organizationVO
     *
     * @return
     */
    IPage<OrganizationBO> getOrganizationListByPage(OrganizationVO organizationVO);

    /**
     * 根据机构主键查询组织机构详情
     *
     * @param organizationId
     *
     * @return
     */
    OrganizationBO getOrganizationInfo(String organizationId);

    /**
     * 查询保险机构信息
     *
     * @param cooperationCompanyOrganizationVO
     *
     * @return
     */
    IPage<CooperationCompanyOrganizationBO> insuranceList(CooperationCompanyOrganizationVO cooperationCompanyOrganizationVO);

    /**
     * 实时查询下级保险机构信息
     *
     * @param cooperationCompanyOrganizationListVO
     *
     * @return
     */
    List<CooperationCompanyOrganizationBO> getCooperationCompanyOrganizationList(CooperationCompanyOrganizationListVO cooperationCompanyOrganizationListVO);

    /**
     * 根据用户的机构编码查询本级银行机构
     *
     * @param
     *
     * @return
     */
    List<OrganizationBO> getOrganizationListByCode();
}
